home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 2: Applications / Linux Cubed Series 2 - Applications.iso / editors / emacs / xemacs / xemacs-1.006 / xemacs-1 / lib / xemacs-19.13 / lisp / utils / delbackspace.el < prev    next >
Encoding:
Text File  |  1995-08-26  |  3.9 KB  |  78 lines

  1. ;;; delbackspace.el --- rebind backspace and delete to be correct
  2.  
  3. ;; Copyright (C) 1994 Free Software Foundation, Inc.
  4. ;; Copyright (C) 1995 Amdahl Corporation.
  5. ;;
  6. ;; Author: Tibor Polgar??
  7. ;; Maintainer: Ben Wing <wing@netcom.com>
  8. ;; Keywords: terminals
  9. ;;
  10.  
  11. ;; this is a hack that will have to do until function-key-map is implemented
  12. (defconst delbackspace-backspace
  13.   (if (not (eq 'tty (device-type (selected-device))))
  14.       'backspace
  15.     "\C-h"))
  16.  
  17. (global-unset-key 'delete)
  18. (global-unset-key delbackspace-backspace)
  19. (local-unset-key 'delete)
  20. (local-unset-key delbackspace-backspace)
  21. (global-unset-key [(control delete)] )
  22. (global-unset-key [(meta delete)] )
  23. (global-unset-key [(meta shift delete)] )
  24. (global-unset-key [(control backspace)] )
  25. (global-unset-key [(meta backspace)] )
  26. (global-unset-key [(meta shift backspace)] )
  27.  
  28. (if (eq 'tty (device-type (selected-device)))
  29.     (progn
  30.       (setq help-char '(meta h))
  31.       (define-key global-map "\M-h" 'help-command)))
  32.  
  33. (define-key global-map 'delete 'delete-char)
  34. (define-key lisp-mode-map 'delete 'delete-char)
  35. (define-key emacs-lisp-mode-map 'delete 'delete-char)
  36. (define-key c-mode-map 'delete 'delete-char)
  37. (define-key c++-mode-map 'delete 'delete-char)
  38. (define-key text-mode-map 'delete 'delete-char)
  39. (define-key indented-text-mode-map 'delete 'delete-char)
  40. (define-key minibuffer-local-map 'delete 'delete-char)
  41.  
  42. (define-key global-map delbackspace-backspace 'backward-delete-char-untabify)
  43. (define-key lisp-mode-map delbackspace-backspace 'backward-delete-char-untabify)
  44. (define-key emacs-lisp-mode-map delbackspace-backspace 'backward-delete-char-untabify)
  45. (define-key c-mode-map delbackspace-backspace 'backward-delete-char-untabify)
  46. (define-key c++-mode-map delbackspace-backspace 'backward-delete-char-untabify)
  47. (define-key isearch-mode-map delbackspace-backspace 'isearch-delete-char)
  48. (define-key text-mode-map delbackspace-backspace 'backward-delete-char-untabify)
  49. (define-key indented-text-mode-map delbackspace-backspace 'backward-delete-char-untabify)
  50. (define-key minibuffer-local-map delbackspace-backspace 'backward-delete-char-untabify)
  51. (and (boundp 'mh-folder-mode-map)
  52.      (define-key mh-folder-mode-map delbackspace-backspace 'mh-previous-page))
  53.  
  54. (global-set-key [(control backspace)] 'backward-kill-line)     ; (ctrl) backspace to beginning of line
  55. (global-set-key [(meta backspace)] 'backward-kill-word)         ; (meta) backspace word before cursor
  56. (define-key c-mode-map [(meta backspace)] 'backward-kill-word)      
  57. (define-key c++-mode-map [(meta backspace)] 'backward-kill-word)    
  58. (global-set-key [(symbol backspace)] 'backward-kill-sentence)   ; (alt) backspace sentence before cursor
  59. (define-key c-mode-map [(symbol backspace)] 'backward-kill-sexp)         
  60. (define-key c++-mode-map [(symbol backspace)] 'backward-kill-sexp)       
  61. (define-key emacs-lisp-mode-map [(symbol backspace)] 'backward-kill-sexp)
  62. (define-key lisp-mode-map [(symbol backspace)] 'backward-kill-sexp)      
  63. (define-key minibuffer-local-map [(symbol backspace)] 'backward-kill-sexp)
  64. (global-set-key [(meta shift backspace)] 'backward-kill-paragraph)   ; (meta shift) backspace paragraph before cursor
  65.  
  66. (global-set-key [(control delete)] 'kill-line)       ; (alt) delete rest of line  (erase EOF)
  67. (global-set-key [(meta delete)] 'kill-word)           ; (meta) delete next word
  68. (define-key c-mode-map [(meta delete)] 'kill-word)  
  69. (define-key c++-mode-map [(meta delete)] 'kill-word)
  70. (global-set-key [(symbol delete)] 'kill-sentence)     ; (alt) delete next sentence
  71. (define-key c-mode-map [(symbol delete)] 'kill-sexp)         ; (alt) delete expression forward
  72. (define-key c++-mode-map [(symbol delete)] 'kill-sexp)        
  73. (define-key emacs-lisp-mode-map [(symbol delete)] 'kill-sexp)
  74. (define-key lisp-mode-map [(symbol delete)] 'kill-sexp)      
  75. (define-key minibuffer-local-map [(symbol delete)] 'kill-sexp)
  76. (global-set-key [(meta shift delete)] 'kill-paragraph)     ; (meta shift) delete next paragraph
  77.  
  78.